Presently, many people receive television and video programming via a cable or satellite provider. As shown in FIG. 1, typically the user's television 10 is connected to a network interface device 20. The network interface device 20 is then coupled to a cable company's cable line that is run into the user's house, or to a satellite antenna that receives a satellite feed.
The network interface device 20 is capable of receiving digital data from a television programming source 400, and converting that digital data into a form that can be displayed on a television 10. The television programming that is played through the user's television 10 could be real-time programs that are being broadcast, or on-demand programming that has been requested by the user.
In some instances, the same network interface device 20 can also be used to couple a user's computer 14 to a data network. Further, the network interface device 20 might also be used to provide the user with telephone service to his telephone 16. In FIG. 1, a single network interface device 20 is shown as providing the user's computer 14 with access to the Internet and also providing telephone service to the user's telephone. In actual implementations, multiple individual devices might be used for each purpose. In other words, a first network interface device might link the user's television to the source of television programming, a second network interface device could be used to link the user's computer to the Internet, and a third interface device could be used to couple the user's telephone to the telephone network 230 via the data network 220. However, each of the network interface devices would utilize the same communications medium, such as a coaxial cable that is run to the user's house.
Digital recorders that are capable of recording television programs have also come into widespread use. Such devices can be coupled to a network interface device 20, or the recording device 12 could be integrated into the same physical device as the network interface 20. Such digital recorders are capable of receiving and recording television programming. In some instances, the digital recorders 12 can be programmed to record particular programs using the television 10 as a display screen, and using a remote control device to provide user input.
In addition, some such digital recording devices 12 are also capable of accessing the Internet and downloading information about upcoming television programming over the Internet. This information can then be used to help display the upcoming television programming as part of a user interaction to schedule a recordation action. When the recording device 12 is able to access the Internet to download information, that access can be provided through the network interface device 20, or through a separate Internet connection.
Some digital recording devices 12 are also capable of accessing and downloading television programming and movies from the Internet, and then playing those downloaded shows, through the television, at the user's convenience. Here again, if the recording device is capable of accessing the Internet, that access could be provided by the network interface device, or via a separate Internet connection.
There are various existing computer and telephony systems that provide voice services to users. These voice services can be speech recognition and touchtone enabled. Examples of such services include voice mail, voice activated dialing, customer care services, and the provision of access to Internet content via telephone.
Some display screens that primarily operate as televisions are also capable of displaying video images generated by a computer. Thus, it is now possible to view video programming on a television 10 based on video images that are playing on a connected computer 14. The computer 14 might be playing a video from a DVD, from a recording on the computer's hard disk, or from data it is receiving from a data network 220. As noted above, the computer 14 could be directly coupled to the data network 220, or the computer could be linked to the data network 220 via an interface device 20.
One common example of a system that provides voice services is an Interactive Voice Response (IVR) system. In prior art systems, a user would typically use a telephone to call in to a central computer system which provides voice services via an IVR system. The IVR system deployed on the central computer system would then launch voice services, for instance by playing an audio clip containing a menu of choices to the user via the telephone line connection. The user could then make a selection by speaking a response. The spoken response would be received at the central computer system via the telephone line connection, and the central computer system would interpret the spoken response using speech recognition techniques. Based on the user's response, the IVR system would then continue to perform application logic to take further action. The further action could involve playing another menu of choices to the user over the telephone line, obtaining and playing information to the user, connecting the user to a third party or a live operator, or any of a wide range of other actions.
The ability to provide voice services has been quite limited by the nature of the systems that provide such services. In the known systems that provide voice services using relatively complex speech recognition processing, the voice applications are performed on high end computing devices located at a central location. Voice Application processing requires a high end centralized computer system because these systems are provisioned to support many simultaneous users.
Because complex voice application processing must be provided using a high end computer system at a central location, and because users are almost never co-located with the high end computer system, a user is almost always connected to the central computer system via a telephone call. The call could be made using a typical telephone or cell phone over the PSTN, or the call might be placed via a VoIP-type (Skype, SIP) connection. Regardless, the user must establish a dedicated, persistent voice connection to the central computer system to access the voice services.
In a typical prior art architecture for a centralized voice services platform, the speech recognition functions are performed at a central computer system. A user telephone is used to place a telephone call to a central voice services platform via a telephone network. The telephone network could be a traditional PSTN, or a VoIP based system. Either way, the user would have to establish the telephone call to the central voice service platform via a telephone carrier.
The prior art centralized voice services platforms, which depend on a telephony infrastructure for connection to users, are highly inflexible from a deployment standpoint. The configurations of hardware and software are all concentrated on a small number of high end servers. These configurations are technically complex and hard to monitor, manage, and change as business conditions dictate. Furthermore, the deployment of existing IVR system architectures, and the subsequent provisioning of users and voice applications to them, requires extensive configuration management that is often performed manually. Also, changes in the configuration or deployment of IVR services within extant IVR architectures often require a full or partial suspension of service during any reconfiguration or deployment effort.
Further, cost structures and provisioning algorithms that provision the capabilities of such a centralized voice services platform make it virtually impossible to ensure that a caller can always access the system when the system is under heavy usage. If the system were configured with such a large number of telephone line ports that all potential callers would always be connected to access contrasting types of voice services, with different and overlapping peak utilization hours, the cost of maintaining all the hardware and software elements would be prohibitive. Instead, such centralized voice services platforms are configured with a reasonable number of telephone ports that result in a cost-effective operating structure. The operator of the system must accept that callers may sometimes be refused access. Also, system users must accept that they will not receive an “always on” service.
Prior art centralized voice services platforms also tend to be “operator-centric.” In other words, multiple different service providers provide call-in voice services platforms, but each service provider usually maintains their own separate platform. If the user has called in to a first company's voice services platform, he would be unable to access the voice services of a second company's platform. In order to access the second company's voice services platform, the user must terminate his call to the first company, and then place a new call to the second company's platform. Thus, obtaining access to multiple different IVR systems offered by different companies is not convenient.
In addition to the above-described drawbacks of the current architecture, the shared nature of the servers in a centralized voice services platform limits the ability of the system to provide personalized voice applications to individual users. Similarly, the architecture of prior art IVR systems limit personalization even for groups of users. Because of these factors, the prior art systems have limitations on their ability to dynamically account for individual user preferences or dynamically personalize actual voice applications on the fly. This is so because it becomes very hard for a centralized system to correlate the user with their access devices and environment, to thereby optimize a voice application that is tuned specifically for an individual user. Further, most centralized systems simply lack user-specific data.
With the prior art voice services platforms, it was difficult to develop efficient mechanisms for billing the users. Typically, the telephone carrier employed by the user would bill the user for calls made to the voice services platform. The amount of the charges could be determined in many different ways. For instance, the telephone carrier could simply bill the user a flat rate for each call to the voice services platform. Alternatively, the telephone carrier could bill the user a per-minute charge for being connected to the voice services platform. In still other methods, the voice services platform could calculate user charges and then inform the carrier about how much to bill the user. Regardless of how the charges are calculated, it would still be necessary for the telephony carrier to perform the billing, collect the money, and then pay some amount to the voice service platform.
Prior art voice services platforms also had security issues. In many instances, it was difficult to verify the identity of a caller. If the voice services platform was configured to give the user confidential information, or the ability to transfer or spend money, security becomes an important consideration.
Typically, when a call is received at the voice services platform, the only information the voice services platform has about the call is a caller ID number. Unfortunately, the caller ID number can be falsified. Thus, even that small amount of information could not be used as a reliable means of identifying the caller. For these reasons, callers attempting to access sensitive information or services were usually asked to provide identifying data that could be compared to a database of security information. While this helps, it still does not guarantee that the caller is the intended user, since the identifying data could be provided by anybody.
Some prior art voice services platforms were used to send audio messages to users via their telephones. The central voice services platform would have a pre-recorded audio message that needed to be played to multiple users. The platform would call each of the users, and once connected to a user, would play the audio message. However, when it was necessary to contact large numbers of users, it could take a considerable amount of time to place all the calls. The number of simultaneous calls that can be placed by the centralized voice services platform is obviously limited by the number telephone ports it has. Further, in some instances, the PSTN was incapable of simultaneously connecting calls on all the available line ports connected to the voice services platform. In other words, the operators found that when they were trying to make a large number of outgoing calls on substantially all of their outgoing lines, the PSTN sometimes could not simultaneously connect all of the calls to the called parties. Further, when a voice services platform is delivering audio messages in this fashion, they tie up all the telephone port capacity, which prevents users from calling in to use the service.
One use of a voice services platform as discussed above relates to interacting with a television broadcast audience. In recent years, television programs have included various contests which allow members of the viewing audience to vote as part of the process of establishing a winner. In some instances, audience members located at home are capable of voting by calling pre-determined telephone numbers. Typically one number would be established for a yes vote and another number would be established for a no vote. If the audience was voting for one of multiple different contestants, each contestant might have a different pre-determined telephone number, and the viewing audience would be capable of voting by calling the telephone number for the contestant that they believed should win.
As mentioned above, the voice services platforms that would receive call-in votes for this sort of a television contest would need to be able to receive large numbers of telephone calls over a relatively short period of time. However, there are some serious limitations on the ability of such a system to receive and tabulate the votes of all audience members wishing to cast a vote. Such systems were limited by the number of telephone lines into the system, and the ability of the PSTN to connect incoming calls to all of those lines. As a result, in most instances, the systems are only able to receive and tabulate votes for a fraction of the total number of audience members wishing to vote.
Over the last few years, more and more individuals have acquired mobile telephones that have the ability to send text messages. The text messages are communicated exclusively in a digital data format, although they traverse the cellular telephone network. It is possible to process a much larger number of text messages than actual telephone call votes for the same period of time. Also, it is generally less expensive to process a text message, as opposed to a telephone call. As a result, the producers of some television programs asking for audience participation have begun to instruct the audience members to vote or provide input via text messages.
An example of such a system is illustrated in FIG. 2. As shown therein, multiple mobile telephones 1020 are connected to the cellular telephone network 1050 and are capable of sending text messages via the cellular telephone network. In some instances, the television program producers invite audience members to send a message to one telephone number 1060 for a yes vote and to another telephone number 1062 for a no vote. Alternatively, the program producers might use a single telephone number and actually examine the content of the text messages to determine how the audience members are voting.
The text messaging approach has the capability to allow more audience members to vote, but there are still problems. To begin with, the cellular telephone network also has hard limits to the number of text messages that can be handled in any given period of time. Due to internal system delays, some messages may not arrive before the program needs to tabulate and display the results of the voting. As a result, some, or possibly many audience members will think that they have cast a vote, even thought the text message with their vote arrives too late to be counted. In addition, depending on the service plan held by the individual audience members, the audience members may be charged for sending the text message.
Another approach to receiving audience participation involves having the audience members send an e-mail to a particular e-mail address, or having the audience members log onto a particular website to cast a vote. These methods also have drawbacks. First, many people do not have access to the Internet. For those that do, they may have their computer located in a room of their house that is separate from the room containing the television. As a result, it may be highly inconvenient for an audience member to go to his computer to cast a vote. Also, there are limits on the number of visitors that a website can receive on a simultaneous basis. If too many audience members try to log onto a website at the same time to cast a vote, it can result in the website crashing, which prevents anyone from voting.